package tree

// 红黑树（Red Black Tree）
//
// 红黑树定义：
// - 根节点为黑
// - 所有叶子节点为黑色空值节点
// - 红色节点相邻节点不能为红
// - 任意节点到其可达叶子节点的所有路径，都包含相同数目的黑色节点
//
// 在插入、删除时，可能会破坏3、4点规则，因此需要调整来平衡数
//
// 左旋、右旋
//
// 红黑树规定，插入节点必须是红色的
//
// 红黑树一般做到基本平衡，并不像平衡二叉树一样平衡规则很严格，
// 其实是为了更好的查询、插入、删除效率.
